Network operators use protection and restoration mechanisms to increase the availability of service offerings. Implementation of these mechanisms involves a balancing of two competing goals: (1) minimizing the amount of outage time when a failure occurs and (2) minimizing the amount of resources used to provide protection or restoration for the failure. Existing data plane protection provides fast switching times, but requires a large number of network resources dedicated to protection. Control plane restoration is used in some networks to reduce the number of network resources needed by using dynamic signaling of a restoration path at the time a failure is detected, but at the expense of a longer switching time.